"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var Sequelize = require('sequelize');
var config_1 = __importDefault(require("../config"));
var DB_HOST = config_1.default.DB_HOST, DB_NAME = config_1.default.DB_NAME, DB_PORT = config_1.default.DB_PORT, DB_PASS = config_1.default.DB_PASS, DB_USE = config_1.default.DB_USE;
var sequelize = new Sequelize(DB_NAME, DB_USE, DB_PASS, {
    host: DB_HOST,
    dialect: 'mysql',
    'dialectOptions': {
        charset: "utf8mb4",
        collate: "utf8mb4_unicode_ci",
    },
    'port': 3306,
    //解决中文输入问题
    'define': {
        'charset': 'utf8mb4'
    },
    pool: {
        max: 5,
        min: 0,
        idle: 10000
    },
});
// console.log(sequelize);
exports.default = sequelize;
// const mysql: any = require('mysql');
// class DBOptions {
//   readonly host: string = DB_HOST
//   readonly user: string = DB_USE
//   readonly database: string = DB_NAME
//   readonly password: string = DB_PASS
//   readonly port: number = DB_PORT
// }
// const dbOptions = new DBOptions()
// console.log(dbOptions, '========....')
// let pool = mysql.createPool(dbOptions);
// export const createCoon = function (sql: string, values?: Array<number | string>) {
//   console.log(sql, values, '=======')
//   return new Promise((resolve: Function, reject: Function) => {
//     pool.getConnection(function (err: any, connection: any) {
//       if (err) {
//         console.log(err, ']]]]]]]]]]]]]]]')
//         reject(err)
//       } else {
//         connection.query(sql, values, (err: any, rows: any) => {
//           if (err) {
//             console.log(err, ')))))))))00000000000')
//             reject(err)
//           } else {
//             console.log(rows, '00000000000')
//             resolve(rows)
//           }
//           connection.release()
//         })
//       }
//     })
//   }).then((res) => {
//     return res
//   }, (err) => {
//     return err
//   })
// }
// export const coon = function (sql: string, values?: Array<number | string>) {
//   return createCoon(sql, values).then((res) => {
//     return res
//   }, (err) => {
//     console.log(err, '}}}}}}}}}}}')
//     return err
//   })
// }
// export const createCoon = function (sql: string, values?: Array<number | string>) {
//   console.log(sql, values, '=======')
//   pool.query(sql, values, (err: any, res: any[]) => {
//     if (err) {
//       return new Promise(function(){}).catch(err)
//     } else {
//       console.log(res)
//       return res
//     }
//   });
// }
